﻿using System;

using System.Collections.Generic;
using System.Text;

namespace UltiCoreLibrary
{
    public enum GameColors
    {
        COLOR_COLORLESS = 0,
        COLOR_HEARTS = 1,
        COLOR_BELLS = 2,
        COLOR_ACORNS = 3,
        COLOR_LEAVES = 4
    }

    public class GameColor
    {
        public static LinkedList<GameColor> colors = new LinkedList<GameColor>();

        static GameColor()
        {
            colors.AddLast(new GameColor(GameColors.COLOR_ACORNS));
            colors.AddLast(new GameColor(GameColors.COLOR_BELLS));
            // colors.AddLast(new GameColor(GameColors.COLOR_HEARTS));
            colors.AddLast(new GameColor(GameColors.COLOR_LEAVES));
        }

        private GameColors color;

        public GameColors Color
        {
            get { return color; }
            // set { color = value; }
        }

        private string name;

        public string Name
        {
            get { return name; }
            // set { name = value; }
        }

        public override string ToString()
        {
            return name;
        }

        public GameColor(GameColors color)
        {
            this.color = color;

            switch (color)
            {
                case GameColors.COLOR_ACORNS:
                    name = "Acorns";
                    break;
                case GameColors.COLOR_BELLS:
                    name = "Bells";
                    break;
                case GameColors.COLOR_HEARTS:
                    name = "Hearts";
                    break;
                case GameColors.COLOR_LEAVES:
                    name = "Leaves";
                    break;
            }

        }
    }
}
